Handing Over the Whole Game Backend. Introducing Game Server Services
Hello, this is Irii from the Game Solution Dept.
I have just released the following video about Game Server Service (GS2).
This video provides an overview of GS2, the benefits of implementing it, and what specific features it offers.
In this article, "I want to read it in text!" I will write an excerpt from the video for those who want to read it in text.
What is Game Server Services(GS2)
GS2 = Backend as a Service(BaaS)
GS2 is a service that provides back-end functions for games, and is classified as a Backend as a Service, commonly known as BaaS, type of service. BaaS refers to a cloud service that takes over the back-end functions of an application or system on behalf of the developer.
What is BaaS? | Backend-as-a-Service vs. serverless | Cloudflare
If the necessary backend functions exist within GS2, game developers can be freed from the trouble of designing and developing functions from scratch and managing complex infrastructures. This freedom allows them to concentrate on developing the front-end parts of the game that the users will actually see and interact with, which is where their efforts should ideally be focussed.
GS2 provides all essential game development features.
GS2 provides over 40 different game backend features.
By introducing GS2, you can escape from the repetitiveness of so-called "reinventing the wheel", where you'd typically have to develop common functions from scratch for each game project. This allows you to focus more on delivering unique game experiences to the players.
Comparison of development flow when GS2 is not introduced and when it is introduced
Now let's delve into the specific labor benefits of introducing GS2, focusing on the development flow.
Firstly, I'll run you through the flow if GS2 isn't used in the game development process necessitating backend functionalities.
Initially, backend development tasks are a must. After designing, implementing, and debugging, the newly developed functions are deployed on newly constructed infrastructure. Once the backend environment is set up, work needs to be done to utilize it. Necessary master data is set in a database or similar, and then the game client implements the process to call the backend.
This workflow needs to be followed for each backend function, making the whole process time-intensive and complex.
Now, let's move on to the development flow when GS2 is adopted.
In this flow, if the required functionality exists in GS2, development of that functionality is not required. GS2 is responsible for the development of back-end functions and all infrastructure-related work. Therefore, the left half of the previous flow becomes unnecessary.
Also all the infrastructure construction and operations necessary for backend functions are handled by GS2, relieving developers of those concerns.
The GS2 infrastructure holds scalability to cope with sudden traffic surges, so user game experience will not be impaired by load-induced latency. To give concrete figures, it has been verified in advance by load tests to handle up to 100,000 accesses per second.
In addition, the server security is at the top level in the industry. The latest OS and middleware are always being used, and there are robust access restrictions on the server itself.
In terms of using GS2's backend, you can customize functions with scripts and set master data as needed.
After these tasks are completed, you need to implement the backend call part in the game client. But don’t worry, as a user-friendly SDK, it eliminates the need to figure out a system for calling GS2 functions from scratch. This greatly improve your development process and reduces complexity.
For SDKs, the following game engines and programming languages are available
- Game Engine
- Unity
- Unreal Engine
- Programming Language
- Java
- PHP
- Go
- Python
- TypeScript
- C#
Backend functions that GS2 has
GS2 doesn't only house backend functionalities for games, but it also offers features necessary for development and operations. Each function can be broadly categorized as follows.
I'll dive deeper into what kind of features each of these categories encompasses.
Player Profile
Example of a feature for managing player information.
- GS2-Account
- Manages anonymous accounts for each player and provides authentication feature.
- GS2-Account | Game Server Services | Docs
- GS2-Inventory
- Manage the item information that a player has.
- GS2-Inventory | Game Server Services | Docs
- GS2-Stamina
- Limits the actions a player can perform based on stamina that recovers over time.
- GS2-Stamina | Game Server Services | Docs
- GS2-Mission
- Set up a system to award achievements, trophies, or missions based on player actions.
- GS2-Mission | Game Server Services | Docs
Economy
Example of an economic feature within the game that involves the use of in-game currency and items.
- GS2-Money
- Allows for balance management of in-game currencies carrying equivalent real-world monetary value.
- GS2-Money | Game Server Services | Docs
- GS2-Exchange
- Enables exchanges of in-game resources, such as purchasing items using the currency.
- GS2-Exchange | Game Server Services | Docs
- GS2-Lottery
- Allowing you to implement so-called "gacha" functionalities for randomly determining prizes.
- GS2-Lottery | Game Server Services | Docs
- GS2-Showcase
- Enables the creation of item shops with display shelves.
- GS2-Showcase | Game Server Services | Docs
Communication
Example of a communication feature that supports interaction between players.
- GS2-Chat
- Embeds a constantly connected text chat function within the game.
- GS2-Chat | Game Server Services | Docs
- GS2-Friend
- You can implement in-game friend management features and follow functions.
- GS2-Friend | Game Server Services | Docs
- GS2-Ranking
- Allows for the creation of rankings, a competitive platform where players can vie with each other for game scores, clear times, and other performance metrics.
- GS2-Ranking | Game Server Services | Docs
- GS2-Matchmaking
- Enables players to find opponents based on various conditions.
- GS2-Matchmaking | Game Server Services | Docs
System
Example of system features beneficial for the operation of the game.
- GS2-News
- Enables you to deliver announcements to players within the game in HTML format.
- GS2-News | Game Server Services | Docs
- GS2-Schedule
- Assists in managing game events' schedules such as seasonal events.
- GS2-Schedule | Game Server Services | Docs
- GS2-Script
- Extends GS2 to achieve game-specific functionalities.
- GS2-Script
- GS2-Version
- Allows you to implement features such as application version checks.
- GS2-Version | Game Server Services | Docs
Development
Some features essential for server development and operations.
- GS2-Deploy
- Creates resources for each service based on pre-established templates.
- GS2-Deploy
- GS2-Identifier
- Allows for the management of user-specific credentials for accessing GS2.
- GS2-Identifier
- GS2-Log
- Responsible for the aggregation and computation of logs from various GS2 functions.
- GS2-Log
Examples of using GS2 in social games
As you can see from the features introduced thus far, GS2 is equipped with numerous functionalities tailored for social game backends. Depending on the specifications of a social game, GS2 alone can cover all backend functionalities.
For instance, essential functions required in a typical social game include mechanisms for player authentication, management of in-game information such as owned characters or items, billing, lottery, player interactions, game operations, and game server development and maintenance.
In GS2, by combining available services, you can singularly realize these functions.
Classmethod, Inc. provides support for GS2 implementation.
If you are interested in GS2 as a result of this video or article, please feel free to contact Classmethod, Inc. using the form linked below. We can provide a variety of support for implementation, development, and operation.
Game Server Services(GS2)| Classmethod, Inc.
*This page is in Japanese, but we can respond to your inquiries.